using System;
using System.Collections.Generic;
using System.Text;

namespace cklibirc
{
    public class IrcConnection
    {
        private string _hostName;

        /// <summary>
        /// The HostName of the IRC server you're connected to.
        /// </summary>
        public string HostName
        {
            get
            {
                return _hostName;
            }
        }

        private int _port = 0;

        /// <summary>
        /// The port on which you're connected to the IRC server.
        /// </summary>
        public int Port
        {
            get
            {
                return _port;
            }
        }

        private List<Channel> _joinedChannels;

        /// <summary>
        /// This is a collection of all the currently joined channels.
        /// </summary>
        public List<Channel> JoinedChannels
        {
            get
            {
                return _joinedChannels;
            }
        }

        /// <summary>
        /// This method determines if person is on the network. If they are, it returns that person.
        /// If the person does not exist, it returns a null reference.
        /// </summary>
        /// <param name="nickname">The person you're looking for.</param>
        /// <returns>An instance of person, if that person exists.</returns>
        public Person FindPerson(string nickname)
        {

            // This is obviously a bollocks at the moment.. 
            // None of these methods do anything.
            Person person = new Person();

            return person;
        }

        /// <summary>
        /// This method connects you to an IRC server.
        /// </summary>
        /// <param name="hostname">The host name you're connecting to.</param>
        /// <param name="port">The port number you're connecting on.</param>
        public void Connect(string hostname, int port)
        {
            
        }

        internal IrcConnection()
        {

        }
    }
}
